package com.sun.designpatternsdemo.interpreter

/**
 * 版权：xx公司 版权所有
 * @author sun
 * 版本：1.0
 * 创建日期：2021/7/1 16:41
 * 描述：类
 *创建实现了上述接口的实体类。
 */
interface Expression{
    fun interpreter(content:String):Boolean
}
//创建实现了上述接口的实体类。
class AndExpression(val expression: Expression,val expression2: Expression):Expression{
    override fun interpreter(content: String): Boolean {
        return expression.interpreter(content) and expression2.interpreter(content)
    }

}
//创建实现了上述接口的实体类。
class OrExpression(val expression: Expression,val expression2: Expression):Expression{
    override fun interpreter(content: String): Boolean {
        return expression.interpreter(content) or  expression2.interpreter(content)
    }

}
//创建实现了上述接口的实体类。
class TerminalExpression(var data:String):Expression{
    override fun interpreter(content: String): Boolean {
       return content.contains(data)
    }

}